package com.sunther.document.service;

import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.IService;
import com.sunther.document.entity.ProjectEntity;
import com.sunther.idb.common.util.WebResult;

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.util.Date;
import java.util.List;
import java.util.Map;

/**
 * @author admin
 */
public interface ProjectService extends IService<ProjectEntity> {
    Map<String, String> getAllProjectNameMap();

    Map<String, String> getAllProjectNameByNameMap();

    List<ProjectEntity> listByKeyword(String keyword);

    Page pageList(String keyword, Date startDate, Date endDate, int pageNumber, int pageSize, HttpServletRequest request);

    WebResult saveOrUpdateProject(ProjectEntity projectEntity, HttpServletRequest request);

    void export(String keyword, Date startDate, Date endDate, HttpServletRequest request, HttpServletResponse response) throws Exception;

    WebResult delete(String id);

    ProjectEntity dtl(String id);
}
